How to check if the column exists in sql table

68

How to check if a column exists in a SQL Server table? -

A more concise version

IF COL_LENGTH('table_name','column_name') IS NULL
BEGIN
/* Column does not exist or caller does not have permission to view the object */
END
The point about permissions on viewing metadata applies to all answers not just this one.

Note that the first parameter table name to COL_LENGTH can be in one, two, or three part name format as required.

An example referencing a table in a different database is

COL_LENGTH('AdventureWorks2012.HumanResources.Department','ModifiedDate')
One difference with this answer compared to using the metadata views is that metadata functions such as COL_LENGTH always only return data about committed changes irrespective of the isolation level in effect.

Comments

Submit
0 Comments

More Questions

mysql format datemysql grant all privileges to a user finding duplicate column values in table with sql
mysql format dateorder by sql mysql show all tables
get all table name in sql through phpmysql show tables in database select count of distinct values sql
import database through command linesql server substring rename table sql
selecting name that contain certain word in sqlinstall sqlite3 python select duplicates in sql
ERROR 2002 (HY000): Cant connect to local MySQL server through socket -tmp-mysql.sock (2)alter table add foreign key mysql mysql delete row
how to auto increment in sqlhow to install mysql ubuntu sql where contains
how to create a table structure from another table in mysqlselect nextval from sequence sql truncate table
install sqlite npmpostgresql check total storage GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
how to select one row in mysqlselect row from mysql where date more than 30 days sql view where tables have same column name combine results
python mysql check if database existsdrop table if exists mysql month name extract
SQL SERVER Add Identity Column to existing tableupdate using case in mysql No module named MySQLdb
sql count duplicate rowshow to install postgresql on wsl group_concat limit mysql
sort by sqlquery to list all tables in sql database SELECT User,Host FROM mysql.user;
create a view in sqlitemysql get last insert id SQL UPDATE Statement
mysql show table column full descriptionpostgressql uuid t sql get foreign key